/**
 * @description: Login interface parameters
 */
import menu from "../../../../mock/sys/menu";

export interface LoginParams {
  username: string;
  password: string;
}

export interface RoleInfo {
  roleName: string;
  value: string;
}

/**
 * @description: Login interface return value
 */
// export interface LoginResultModel {
//   userId: string | number;
//   token: string;
//   role: RoleInfo;
// }

export interface LoginResultModel {
  userId: string | number;
  token: string;
  menus: MenuModel[];
  authorities: AuthorityModel[];
}

export interface AuthorityModel {
  role: string;
  authority: string;
}

export interface MenuModel {
  id: number;
  parentId: number;
  parentKey: string;
  type: number;
  name: string;
  description: string;
  targetUrl: string;
  sort: number;
  status: number;
  createBy: string;
  modifyBy: string;
  created: string;
  updateTime: string;
}

/**
 * @description: Get user information return value
 */
export interface GetUserInfoModel {
  roles: RoleInfo[];
  // 用户id
  userId: string | number;
  // 用户名
  username: string;
  // 真实名字
  realName: string;
  // 头像
  avatar: string;
  // 介绍
  desc?: string;
}
